.base-page {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;

  > header {
    box-sizing: border-box;
    display: flex;
    flex: 0 0 58px;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding-right: 4px;
    // max-width: 850px;
    margin: 0 auto;
  }

  .base-container {
    height: 100%;
    overflow: hidden;
    border-radius: var(--border-radius);

    > section {
      position: relative;
      box-sizing: border-box;
      flex: 1 1 100%;
      width: 100%;
      height: 100%;
      padding: 28px 0;
      overflow: auto;
      background-color: var(--background-color);
      scrollbar-gutter: stable;

      .base-content {
        width: calc(100% - 28px * 2);
        // max-width: 850px;
        margin: 0 auto;
        // animation: var(--base-content-animation, opacity-content-in) var(base-content-in, 300ms) normal 1 forwards;

        @keyframes base-content-in {
          0% {
            opacity: 0;
            transform: translateY(50%) scale(0.9);
          }

          100% {
            opacity: 1;
            transform: translateY(0) scale(1);
          }
        }
      }
    }
  }
}
